
#ifndef __LIBCO_SINGLETON_H__
#define __LIBCO_SINGLETON_H__

#include <memory>

namespace libco {

/**
 * @brief 单例模式封装类
 * @details T 类型
 */
template<class T>
class Singleton {
public:
    /**
     * @brief 返回单例裸指针
     */
    static T* GetInstance() {
        static T v;
        return &v;
    }
};

}

#endif
